Description

Transfers a specified quantity from one tank to another. ProModel sets the state of the FROM tank to Tank_Emptying and the TO tank to Tank_Filling. If the FROM tank becomes empty, its state becomes Tank_Idle. If the TO tank becomes full, its state becomes Tank_Blocked. Otherwise, the states remain unchanged.

Use Tank_Transfer when you want to transfer a specific quantity from one tank to another.

Components

<FROM Tank ID>

The name or location index number of the FROM tank.

<TO Tank ID>

The name or location index number of the TO tank.

<Transfer Quantity>

The number of units (gallons, pounds) to transfer. To transfer the entire contents of a tank, enter Tank_Level [<FROM Tank ID>].

<FROM Rate>

The rate in units (gallons, pounds) per time unit defined out of the FROM tank. To use a dynamically calculated rate in the Tank_Rate subroutine, enter 0.

<TO Rate>

The rate in units (gallons, pounds) per time unit defined in the General Information dialog into the TO tank. Use 0 if same as the FROM rate. (The TO rate is automatically the same as the FROM rate if you add 0 as the FROM rate.)

<Resume level>

If the TO tank reaches capacity before the specified quantity transfers, the TO tank must drop to the resume level before continuing with the transfer. To terminate transferring when the TO tank reaches capacity, enter Tank_Stop. A value of 0 causes an error to occur if the tank becomes empty before transferring the specified quantity.

Example

When a mixing tank is ready to mix a new batch of material, 10,000 gallons of water must first transfer from a water supply tank at a rate of 100 gpm. The following logic represents this action:

Tank_Transfer(WaterTank, MixingTank, 10000, 100, 0, 0)